package com.example.zhihuhelpapp.mvp.contract;

import com.example.zhihuhelpapp.api.mvp.BaseContract;
import com.example.zhihuhelpapp.bean.QuestionBean;
import com.example.zhihuhelpapp.bean.QuestionResultBean;

import java.util.List;

public interface IQuestionListContract {
    interface IView extends BaseContract.BaseView {
        void onSaveQuestionSuccess();

        void onDelQuestionSuccess();

        void onGetLocalQuestionList(List<QuestionBean> questionBeanList);

        void onGetQuestionDetail(QuestionResultBean questionResultBean);
    }

    interface IPresenter {
        /**
         * 保存到本地
         *
         * @param questionBean 问题bean
         */
        void saveQuestionToLocal(QuestionBean questionBean);

        /**
         * 删除本地问题
         *
         * @param questionId 问题id
         */
        void delLocalQuestion(String questionId);

        /**
         * 获取本地保存的问题列表
         */
        void getLocalQuestionList();

        /**
         * 获取问题详情
         *
         * @param questionId 问题id
         * @param page       回答页码
         */
        void getQuestionDetail(String questionId, int page);

        /**
         * 获取回答详情
         *
         * @param answerId 回答id
         */
        void getAnswerDetail(String answerId);
    }
}
